//
//  CZTabBarViewController.swift
//  Weibo24
//
//  Created by apple on 16/2/24.
//  Copyright © 2016年 apple. All rights reserved.
//

import UIKit
/*
    TabBar分析
    1.自定义TabBar
    2.
*/
class CZTabBarViewController: UITabBarController {

    override func viewDidLoad() {
        super.viewDidLoad()

        // Do any additional setup after loading the view.
        //只读--不能修改
        //如何做? 1.添加一个view 2.KVC
//        tabBar = CZTabBar()
        // 名字不要和系统的一样
        let tabbar = CZTabBar()
       //通过KVC成功的给只读属性赋值
        setValue(tabbar, forKey: "tabBar")
        //
//        setValue(tabbar, forKeyPath: "")
        
        // 实现按钮的点击
        tabbar.composeButton.addTarget(self, action: "showPublish", forControlEvents: UIControlEvents.TouchUpInside)
        
        //添加控制器
        addChildViewController()
       
        
        /* 这两者的区别
        setValue(tabbar, forKey: "tabBar")
    
        setValue(tabbar, forKeyPath: "")

        let s = CZStudent()
        //本类里的属性我们添加赋值可以用 forKey
        s.setValue("aa", forKey: "p")
        
        // 如果去给本类属性里,属性的属性去赋值的话用orKeyPath
        // path - p.name
        s.setValue("aa", forKeyPath: "p.name")
        */
        
        
        
        
    }
    
    
    //MARK:--按钮点击方法
    func showPublish(){
        print("点了我")
    }
    
    ///addChildViewController -- 重载
    ///没有参数
    func addChildViewController() {
        addChildViewController(CZHomeViewController(), title: "首页", image: "tabbar_home")
        addChildViewController(CZMessageViewController(), title: "消息", image: "tabbar_message_center")
        addChildViewController(CZFindViewController(), title: "发现", image: "tabbar_discover")
        addChildViewController(CZSettingViewController(), title: "设置", image: "tabbar_profile")
    }
    
    // 给 addChildViewController 方法添加了参数-- 重载
    func addChildViewController(childController: UIViewController,title: String,image: String) {
        
        //创建一个home控制器
//        let home = CZHomeViewController()
        //设置文字
        childController.title = title
        //设置图片
        childController.tabBarItem.image = UIImage(named: image)
        //字符串进行拼接
        childController.tabBarItem.selectedImage = UIImage(named: "\(image)_highlighted")
        
        //如果不改变tintColor的颜色的画,系统默认渲染蓝色
        UITabBar.appearance().tintColor = UIColor.orangeColor()
        
        addChildViewController(UINavigationController(rootViewController: childController))
        
    }
    
}
